24342
19012
Esta pregunta ya tiene respuestas aquí:
¿Cómo devuelvo la respuesta de una llamada asincrónica?
(42 respuestas)
Cerrado hace 5 meses.
Entonces, al ejecutar el siguiente código, la respuesta de console.log (ba) no está definida
Pero cuando intento esto en la consola Chrome V8, obtengo el resultado correcto que esperaba. No estoy completamente seguro de lo que está pasando aquí.
deja ba;
función Setqa () {
(asíncrono () => {
esperar a buscar ('preguntas.json')
.entonces (res => res.json ())
.entonces (async (datos) => {
ba = esperar datos;
});
}) ();
}
Setqa ();
console.log (ba);
El contenido del archivo json es el siguiente:
"preguntas": [{
"questionType": "multiple",
"pregunta": "¿Cómo está el clima",
"respuestas": "",
"pregunta respuesta": ""
},
{
"questionType": "multiple",
"pregunta": "¿Cómo estás hoy?",
"respuestas": " 1",
"questionAnswer": "textPurpose1"
}
] 
Supongo que debería funcionar
deja ba;
función Setqa () {
return fetch ('preguntas.json')
.entonces (res => res.json ())
.entonces (async (datos) => {
ba = esperar datos;
});
}
Setqa (). Luego (() => console.log (ba));
Pero un mejor enfoque sería
función asíncrona setQa () {
const res = await fetch ('preguntas.json');
return res.json ();
}
deje ba = aguardar setQa ();
|
No es la respuesta que estás buscando? Examine otras preguntas etiquetadas javascript json fetch console.log o haga su propia pregunta.